Model pantulan dan bayangan Perenderan 3D

Model pantulan/serakan (reflection/scattering) dan bayangan (shading) digunakan untuk mencirikan rupa sesuatu permukaan. Hal-hal ini walaupun kelihatan seperti masalah yang umum, tetapi semuanya dikaji dalam konteks perenderan sahaja. Penghasilan grafik komputer 3D moden amat bergantung pada model pantulan ringkas yang dipanggil model pantulan Phong [en] (jangan disamakan dengan pembayangan Phong [en]). Dalam pembiasan cahaya terdapat satu konsep penting yang dipanggil indeks biasan; dalam kebanyakan implementasi pengaturcaraan 3D, ia dikenali dengan istilah "index of refraction" (IOR).

Shading boleh dipecahkan kepada dua teknik berbeza yang selalu dikaji secara berasingan:

  • Pembayangan permukaan - cara cahaya tersebar ke serata permukaan (selalunya digunakan dalam pemaparan garis imbas untuk perenderan 3D masa nyata dalam permainan video)
  • Pemantulan/penyerakan - cara cahaya berinteraksi dengan permukaan pada titik tertentu (selalunya digunakan dalam hasil renderan terjejak sinar untuk perenderan 3D fotorealistik dan artistik bukan masa nyata dalam CGI baik imej pegun mahupun animasi tak interaktif)

Algoritma pembayangan permukaan

Antara algoritma pembayangan permukaan yang digunakan secara meluas dalam bidang grafik komputer 3D termasuk:

  • Pembayangan rata [en]: teknik yang membayangkan setiap poligon pada objek berdasarkan "normal" poligon serta kedudukan dan keamatan punca cahaya
  • Pembayangan Gouraud [en]: dicipta oleh Henri Gouraud pada tahun 1971; teknik pembayangan bucu yang pantas dan peka sumber fast, digunakan untuk mensimulasikan permukaan berbayangan licin
  • Pembayangan Phong [en]: dicipta oleh Bui Tuong Phong; used to simulate specular highlights and smooth shaded surfaces

Pemantulan

Teko Utah dengan pencahayaan hijau

Pantulan atau serakan merupakan hubungan antara pencahayaan yang masuk dan keluar pada titik tertentu. Serakan biasanya diperihalkan dari segi fungsi taburan serakan dwiarah [en] (BSDF).[6]

Pembayangan

Pembayangan adalah mengenai cara-cara pelbagai jenis serakan tersebar ke serata permukaan (iaitu kesesuaian fungsi serakan dengan bahagian yang dikena). Pemerihalan seperti ini biasanya dizahirkan dengan program yang dipanggil pembayang atau shader. [7] Satu contoh pembayangan yang mudah ialah pemetaan tekstur yang menggunakan imej untuk menentukan warna yang berbaur di setiap titik pada permukaan untuk menghasilkan perincian yang lebih jelas.

Contoh teknik-teknik pembayangan:

  • Pemetaan bertompok: Dicipta oleh Jim Blinn, teknik 'pengusikan normal' yang digunakan untuk mensimulasikan permukaan berkedut.[8]
  • Pembayangan sel: Teknik yang digunakan untuk meniru rupa animasi lukisan tangan.

Transport

Transport dalam konteks grafik 3D memperihalkan bagaimana pencahayaan dalam adegan beralih dari satu tempat ke satu tempat. Antara komponen utama pengalihan cahaya ialah keterlihatan objek.

Unjuran

Unjuran perspektif

Objek tiga dimensi yang berbayangan mesti diratakan supaya peranti paparan (seperti monitor) dapat memaparkannya pada satah dua dimensi sahaja; proses ini dipanggil unjuran 3D. Ini dilakukan menggunakan unjuran dan, untuk kebanyakan aplikasi, unjuran perspektif. Idea asas di sebalik unjuran perspektif ialah objek yang lebih jauh dibuat lebih kecil berbanding objek yang lebih dekat dengan mata.

Perspektif dihasilkan oleh program dengan mendarab pemalar dilasi (pelebaran) yang dinaikkan kepada kuasa negatif jarak dari pemerhati. Nilai pemalar dilasi satu bermakna tiada perspektif. Nilai pemalar pelebaran yang tinggi boleh menyebabkan kesan "mata ikan" di mana akan berlakunya herotan imej. Unjuran ortografik digunakan terutamanya dalam aplikasi CAD atau CAM di mana pemodelan saintifik memerlukan ukuran yang persis dan dimensi ketiga dikekalkan.

Rujukan

WikiPedia: Perenderan 3D http://web.cse.ohio-state.edu/~parent.1/classes/78... http://gamma.cs.unc.edu/courses/graphics-s09/LECTU... http://web.cs.wpi.edu/~matt/courses/cs563/talks/bu... http://digitalarchaeology.org.uk/the-science-of-3d... https://cs.dartmouth.edu/~wjarosz////publications/... https://www2.cs.duke.edu/courses/cps124/spring04/n... https://garagefarm.net/blog/show-me-the-money-how-... https://web.archive.org/web/20130319004839/http://... https://web.archive.org/web/20170611022136/http://... https://web.archive.org/web/20190626032140/https:/...